Real-world analog signals such as temperature, pressure, sound, or images are routinely converted to a digital representation that can be easily processed in modern digital systems. In many systems, this digital information must be converted back to an analog form to perform some real-world function. The circuits that perform this step are digital-to-analog converters (DACs), and their outputs are used to drive a variety of devices. Loudspeakers, video displays, motors, mechanical servos, radio frequency (RF) transmitters, and temperature controls are just a few diverse examples. DACs are often incorporated into digital systems in which real-world signals are digitized by analog-to-digital converters (ADCs), processed, and then converted back to analog form by DACs. In these systems, the performance required of the DACs will be influenced by the capabilities and requirements of the other components in the system.
As with many other devices fabricated using complicated manufacturing processes, one factor affecting the performance of DACs includes variations (mismatch) in performance of individual elements of a DAC (referred to herein as a “DAC unit”) due to manufacturing variations or thermal drift during operation of a device. Improvements could be made with respect to addressing this issue.
Overview
Embodiments of the present disclosure provide mechanisms to digitally correct for mismatch of a DAC. The correction may be applicable to continuous-time implementations, and may be especially attractive for high-speed applications.
One aspect of the present disclose provides a method for controlling a DAC comprising a plurality of DAC units. The method includes steps performed for each digital input value of a time-series of digital input values. The steps include selecting a DAC unit of the plurality of DAC units as (i.e. “to act as”) a first DAC unit of a respective ordered subset of the plurality of DAC units to convert the digital input value to an analog signal corresponding to the digital input value, and switching on the respective ordered subset of the plurality of DAC units to generate the analog signal corresponding to the digital input value, where the first DAC unit is selected based on a band-limited (i.e. narrow band) dither signal. The number of DAC units within the respective ordered subset depends on the digital input value
In one embodiment of the method, the plurality of DAC units may be arranged in an array, the first DAC unit may be selected as the DAC unit that is a number d of DAC units away from a reference DAC unit of the array, and the number d may depend on (e.g. be proportional to) a value of the band-limited dither signal at a predefined time, where the predefined time may e.g. depend on a position of the digital input value being converted within the time-series of digital input values.
In one embodiment of the method, the band-limited dither signal may be such that, for each digital input value of the time-series of the digital input values, all DAC units of the respective ordered subset are positioned within the array after the first DAC unit. In this manner, warping of the switching order of the DAC units may be avoided.
In one embodiment of the method, the plurality of DAC units may be arranged in an array and the respective ordered subset may comprise consecutive DAC units of the array.
In one embodiment of the method, the band-limited dither signal may be a signal generated by a numerically controller oscillator and a frequency band of the band-limited dither signal may be such that it does not substantially overlap with a frequency band of the time-series of the digital input values (i.e. with the frequency of the signal of interest).
In one embodiment of the method, the digital input values may be converted to the analog signal using thermometer coding.
As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied in various manners—e.g. as a method, a system, a computer program product, or a computer-readable storage medium. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Functions described in this disclosure may be implemented as an algorithm executed by one or more processing units, e.g. one or more microprocessors, of one or more computers. In various embodiments, different steps and portions of the steps of each of the methods described herein may be performed by different processing units. Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s), preferably non-transitory, having computer readable program code embodied, e.g., stored, thereon. In various embodiments, such a computer program may, for example, be downloaded (updated) to the existing devices and systems (e.g. to the existing DACs or DAC controllers, etc.) or be stored upon manufacturing of these devices and systems.
Other features and advantages of the disclosure are apparent from the following description, and from the claims.